{% extends 'common/base_page.html' %}

{% block title %}文 档{% endblock %}

{% block main_body %}
<article>
    <h1 class="t_nav"><span>当前位置：首页 > 文 档 > 踩过的Django坑 </span>
        <a class="n2">学海无涯</a></h1>
    <div class="infos">
        <div class="newsview">
            <h3 class="news_title">踩过的Django坑</h3>
            <div class="news_author"><span class="au01">JUMP</span>
                <span class="au02">2018-07-28  22：24：47</span>
            </div>
            <div class="tags">
                <button class="layui-btn layui-btn-radius layui-btn-sm layui-btn-primary">Django</button>
            </div>
            <div class="news_infos">
                <br>
                <p>Django是Python的一个开源Web应用框架，采用MTV的开发模式，原理与MVC模式类似。Django带给我感觉就是轻、快，用起来很舒服。本文主要记录在使用Django的时候遇到的问题以及解决方案，
                会持续更新。</p>&nbsp;
                <h2>静态文件的加载</h2>&nbsp;
                <p>第一次使用Django的时候，在页面里导入了几个外部静态文件，未启动服务器时做前端调试，页面能正常显示，但是启动服务器后，页面中仅显示几个汉字。很明显，外部导入的静态文件未加载。百度了一下，需要在settings.py中添加外部文件的路径。
                </p>
                <img src="/webapp/static/img/document/content.png">
                <p>假设项目结构如图所示，静态文件放在layui文件夹下。在settings.py中STATIC_URL后加上：MEDIA_URL = '/layui/' MEDIA_ROOT = os.path.join(BASE_DIR, 'layui')。在urls.py内导入：<br>
                    from django.contrib.staticfiles.urls import static<br>
                    from django.conf import settings<br><br>
                    urlpatterns = [<br>
                    &nbsp;&nbsp;&nbsp;&nbsp;url(r'^$', view.index)<br>
                    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)<br>
                    随后在urlpatterns后加上路径。这样即可在页面内使用layui文件下的静态文件，如：<br>
                    &lt;img src=&ldquo;/layui/static/img/logo.png&rdquo;&gt;
                </p>
                <br>
                <h2>乱码问题</h2>&nbsp;
                <p>在我学Java Web的时候，老师就说过：如果你以后从事网页开发工作，那么乱码问题将会贯穿你的整个职业生涯。现在我就遇到了乱码问题。在用博客模版的时候，我是直接把模版的html文件复制过来的，然后启动Django，打开页面时报了编码问题的错。
                我的IDE设置的编码为UTF-8，而模版的编码为gb2312。百度了一下，这两种编码都支持中文，但是UTF-8的适用范围更广。然后我在html页面的开头规定了文档的编码为UTF-8，但是还是运行失败。有人将html页面以UTF-8编码保存，我用Sublime Text试了一下，
                并没有用。这个问题暂时解决不了，所以就用最简单粗暴的办法解决--不复制文件，只复制代码。将模版的代码复制到IDE中新建的html中，能成功运行。</p>
                参考：<a href="https://blog.csdn.net/ZYY88886666/article/details/75285780" style="color: #1E9FFF" target="_blank">GB2312、GBK与UTF-8的区别</a>
            </div>
        </div>
        <div style="height: 50px;"></div>
    </div>
    {% include 'common/document_sidebar.html' %}
</article>
{% endblock %}